package com.navi.loaddata.core.mesEntity;

import javax.persistence.*;
import java.util.Date;

/**
 * Created by Jay on 2018/3/8.
 */
@Entity
@Table(name = "MES_PROCESSOPERATIONSPEC", schema = "P1RPTADM", catalog = "")
@IdClass(MesProcessoperationspecPK.class)
public class MesProcessoperationspec {
    private String factoryname;
    private String processoperationname;
    private String processoperationversion;
    private String description;
    private String checkstate;
    private String activestate;
    private Date createtime;
    private String createuser;
    private Date checkouttime;
    private String checkoutuser;
    private String processoperationtype;
    private String detailprocessoperationtype;
    private String processoperationgroup;
    private String processoperationunit;
    private String isloginrequired;
    private String defaultareaname;
    private Long operationsequence;
    private String isrework;
    private String skipflag;
    private String lastupdateuser;
    private Date lastupdatetime;
    private String ismainstep;
    private String subfactoryname;
    private String inspectionskipflag;
    private String dcdatacheckflag;
    private Long partialproductqty;
    private String defectreportflag;
    private Date updatetime;
    private String processlayer;
    private String reworklayer;
    private String partialfullflag;
    private String proclayer;
    private String departmentid;
    private String iscomplete;
    private String inspectiontype;
    private String autoskipflag;
    private String rptprocessoperationgroup;

    @Id
    @Column(name = "FACTORYNAME")
    public String getFactoryname() {
        return factoryname;
    }

    public void setFactoryname(String factoryname) {
        this.factoryname = factoryname;
    }

    @Id
    @Column(name = "PROCESSOPERATIONNAME")
    public String getProcessoperationname() {
        return processoperationname;
    }

    public void setProcessoperationname(String processoperationname) {
        this.processoperationname = processoperationname;
    }

    @Id
    @Column(name = "PROCESSOPERATIONVERSION")
    public String getProcessoperationversion() {
        return processoperationversion;
    }

    public void setProcessoperationversion(String processoperationversion) {
        this.processoperationversion = processoperationversion;
    }

    @Basic
    @Column(name = "DESCRIPTION")
    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    @Basic
    @Column(name = "CHECKSTATE")
    public String getCheckstate() {
        return checkstate;
    }

    public void setCheckstate(String checkstate) {
        this.checkstate = checkstate;
    }

    @Basic
    @Column(name = "ACTIVESTATE")
    public String getActivestate() {
        return activestate;
    }

    public void setActivestate(String activestate) {
        this.activestate = activestate;
    }

    @Basic
    @Column(name = "CREATETIME")
    @Temporal(TemporalType.TIMESTAMP)
    public Date getCreatetime() {
        return createtime;
    }

    public void setCreatetime(Date createtime) {
        this.createtime = createtime;
    }

    @Basic
    @Column(name = "CREATEUSER")
    public String getCreateuser() {
        return createuser;
    }

    public void setCreateuser(String createuser) {
        this.createuser = createuser;
    }

    @Basic
    @Column(name = "CHECKOUTTIME")
    @Temporal(TemporalType.TIMESTAMP)
    public Date getCheckouttime() {
        return checkouttime;
    }

    public void setCheckouttime(Date checkouttime) {
        this.checkouttime = checkouttime;
    }

    @Basic
    @Column(name = "CHECKOUTUSER")
    public String getCheckoutuser() {
        return checkoutuser;
    }

    public void setCheckoutuser(String checkoutuser) {
        this.checkoutuser = checkoutuser;
    }

    @Basic
    @Column(name = "PROCESSOPERATIONTYPE")
    public String getProcessoperationtype() {
        return processoperationtype;
    }

    public void setProcessoperationtype(String processoperationtype) {
        this.processoperationtype = processoperationtype;
    }

    @Basic
    @Column(name = "DETAILPROCESSOPERATIONTYPE")
    public String getDetailprocessoperationtype() {
        return detailprocessoperationtype;
    }

    public void setDetailprocessoperationtype(String detailprocessoperationtype) {
        this.detailprocessoperationtype = detailprocessoperationtype;
    }

    @Basic
    @Column(name = "PROCESSOPERATIONGROUP")
    public String getProcessoperationgroup() {
        return processoperationgroup;
    }

    public void setProcessoperationgroup(String processoperationgroup) {
        this.processoperationgroup = processoperationgroup;
    }

    @Basic
    @Column(name = "PROCESSOPERATIONUNIT")
    public String getProcessoperationunit() {
        return processoperationunit;
    }

    public void setProcessoperationunit(String processoperationunit) {
        this.processoperationunit = processoperationunit;
    }

    @Basic
    @Column(name = "ISLOGINREQUIRED")
    public String getIsloginrequired() {
        return isloginrequired;
    }

    public void setIsloginrequired(String isloginrequired) {
        this.isloginrequired = isloginrequired;
    }

    @Basic
    @Column(name = "DEFAULTAREANAME")
    public String getDefaultareaname() {
        return defaultareaname;
    }

    public void setDefaultareaname(String defaultareaname) {
        this.defaultareaname = defaultareaname;
    }

    @Basic
    @Column(name = "OPERATIONSEQUENCE")
    public Long getOperationsequence() {
        return operationsequence;
    }

    public void setOperationsequence(Long operationsequence) {
        this.operationsequence = operationsequence;
    }

    @Basic
    @Column(name = "ISREWORK")
    public String getIsrework() {
        return isrework;
    }

    public void setIsrework(String isrework) {
        this.isrework = isrework;
    }

    @Basic
    @Column(name = "SKIPFLAG")
    public String getSkipflag() {
        return skipflag;
    }

    public void setSkipflag(String skipflag) {
        this.skipflag = skipflag;
    }

    @Basic
    @Column(name = "LASTUPDATEUSER")
    public String getLastupdateuser() {
        return lastupdateuser;
    }

    public void setLastupdateuser(String lastupdateuser) {
        this.lastupdateuser = lastupdateuser;
    }

    @Basic
    @Column(name = "LASTUPDATETIME")
    @Temporal(TemporalType.TIMESTAMP)
    public Date getLastupdatetime() {
        return lastupdatetime;
    }

    public void setLastupdatetime(Date lastupdatetime) {
        this.lastupdatetime = lastupdatetime;
    }

    @Basic
    @Column(name = "ISMAINSTEP")
    public String getIsmainstep() {
        return ismainstep;
    }

    public void setIsmainstep(String ismainstep) {
        this.ismainstep = ismainstep;
    }

    @Basic
    @Column(name = "SUBFACTORYNAME")
    public String getSubfactoryname() {
        return subfactoryname;
    }

    public void setSubfactoryname(String subfactoryname) {
        this.subfactoryname = subfactoryname;
    }

    @Basic
    @Column(name = "INSPECTIONSKIPFLAG")
    public String getInspectionskipflag() {
        return inspectionskipflag;
    }

    public void setInspectionskipflag(String inspectionskipflag) {
        this.inspectionskipflag = inspectionskipflag;
    }

    @Basic
    @Column(name = "DCDATACHECKFLAG")
    public String getDcdatacheckflag() {
        return dcdatacheckflag;
    }

    public void setDcdatacheckflag(String dcdatacheckflag) {
        this.dcdatacheckflag = dcdatacheckflag;
    }

    @Basic
    @Column(name = "PARTIALPRODUCTQTY")
    public Long getPartialproductqty() {
        return partialproductqty;
    }

    public void setPartialproductqty(Long partialproductqty) {
        this.partialproductqty = partialproductqty;
    }

    @Basic
    @Column(name = "DEFECTREPORTFLAG")
    public String getDefectreportflag() {
        return defectreportflag;
    }

    public void setDefectreportflag(String defectreportflag) {
        this.defectreportflag = defectreportflag;
    }

    @Basic
    @Column(name = "UPDATETIME")
    @Temporal(TemporalType.TIMESTAMP)
    public Date getUpdatetime() {
        return updatetime;
    }

    public void setUpdatetime(Date updatetime) {
        this.updatetime = updatetime;
    }

    @Basic
    @Column(name = "PROCESSLAYER")
    public String getProcesslayer() {
        return processlayer;
    }

    public void setProcesslayer(String processlayer) {
        this.processlayer = processlayer;
    }

    @Basic
    @Column(name = "REWORKLAYER")
    public String getReworklayer() {
        return reworklayer;
    }

    public void setReworklayer(String reworklayer) {
        this.reworklayer = reworklayer;
    }

    @Basic
    @Column(name = "PARTIALFULLFLAG")
    public String getPartialfullflag() {
        return partialfullflag;
    }

    public void setPartialfullflag(String partialfullflag) {
        this.partialfullflag = partialfullflag;
    }

    @Basic
    @Column(name = "PROCLAYER")
    public String getProclayer() {
        return proclayer;
    }

    public void setProclayer(String proclayer) {
        this.proclayer = proclayer;
    }

    @Basic
    @Column(name = "DEPARTMENTID")
    public String getDepartmentid() {
        return departmentid;
    }

    public void setDepartmentid(String departmentid) {
        this.departmentid = departmentid;
    }

    @Basic
    @Column(name = "ISCOMPLETE")
    public String getIscomplete() {
        return iscomplete;
    }

    public void setIscomplete(String iscomplete) {
        this.iscomplete = iscomplete;
    }

    @Basic
    @Column(name = "INSPECTIONTYPE")
    public String getInspectiontype() {
        return inspectiontype;
    }

    public void setInspectiontype(String inspectiontype) {
        this.inspectiontype = inspectiontype;
    }

    @Basic
    @Column(name = "AUTOSKIPFLAG")
    public String getAutoskipflag() {
        return autoskipflag;
    }

    public void setAutoskipflag(String autoskipflag) {
        this.autoskipflag = autoskipflag;
    }

    @Basic
    @Column(name = "RPTPROCESSOPERATIONGROUP")
    public String getRptprocessoperationgroup() {
        return rptprocessoperationgroup;
    }

    public void setRptprocessoperationgroup(String rptprocessoperationgroup) {
        this.rptprocessoperationgroup = rptprocessoperationgroup;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        MesProcessoperationspec that = (MesProcessoperationspec) o;

        if (factoryname != null ? !factoryname.equals(that.factoryname) : that.factoryname != null) return false;
        if (processoperationname != null ? !processoperationname.equals(that.processoperationname) : that.processoperationname != null)
            return false;
        if (processoperationversion != null ? !processoperationversion.equals(that.processoperationversion) : that.processoperationversion != null)
            return false;
        if (description != null ? !description.equals(that.description) : that.description != null) return false;
        if (checkstate != null ? !checkstate.equals(that.checkstate) : that.checkstate != null) return false;
        if (activestate != null ? !activestate.equals(that.activestate) : that.activestate != null) return false;
        if (createtime != null ? !createtime.equals(that.createtime) : that.createtime != null) return false;
        if (createuser != null ? !createuser.equals(that.createuser) : that.createuser != null) return false;
        if (checkouttime != null ? !checkouttime.equals(that.checkouttime) : that.checkouttime != null) return false;
        if (checkoutuser != null ? !checkoutuser.equals(that.checkoutuser) : that.checkoutuser != null) return false;
        if (processoperationtype != null ? !processoperationtype.equals(that.processoperationtype) : that.processoperationtype != null)
            return false;
        if (detailprocessoperationtype != null ? !detailprocessoperationtype.equals(that.detailprocessoperationtype) : that.detailprocessoperationtype != null)
            return false;
        if (processoperationgroup != null ? !processoperationgroup.equals(that.processoperationgroup) : that.processoperationgroup != null)
            return false;
        if (processoperationunit != null ? !processoperationunit.equals(that.processoperationunit) : that.processoperationunit != null)
            return false;
        if (isloginrequired != null ? !isloginrequired.equals(that.isloginrequired) : that.isloginrequired != null)
            return false;
        if (defaultareaname != null ? !defaultareaname.equals(that.defaultareaname) : that.defaultareaname != null)
            return false;
        if (operationsequence != null ? !operationsequence.equals(that.operationsequence) : that.operationsequence != null)
            return false;
        if (isrework != null ? !isrework.equals(that.isrework) : that.isrework != null) return false;
        if (skipflag != null ? !skipflag.equals(that.skipflag) : that.skipflag != null) return false;
        if (lastupdateuser != null ? !lastupdateuser.equals(that.lastupdateuser) : that.lastupdateuser != null)
            return false;
        if (lastupdatetime != null ? !lastupdatetime.equals(that.lastupdatetime) : that.lastupdatetime != null)
            return false;
        if (ismainstep != null ? !ismainstep.equals(that.ismainstep) : that.ismainstep != null) return false;
        if (subfactoryname != null ? !subfactoryname.equals(that.subfactoryname) : that.subfactoryname != null)
            return false;
        if (inspectionskipflag != null ? !inspectionskipflag.equals(that.inspectionskipflag) : that.inspectionskipflag != null)
            return false;
        if (dcdatacheckflag != null ? !dcdatacheckflag.equals(that.dcdatacheckflag) : that.dcdatacheckflag != null)
            return false;
        if (partialproductqty != null ? !partialproductqty.equals(that.partialproductqty) : that.partialproductqty != null)
            return false;
        if (defectreportflag != null ? !defectreportflag.equals(that.defectreportflag) : that.defectreportflag != null)
            return false;
        if (updatetime != null ? !updatetime.equals(that.updatetime) : that.updatetime != null) return false;
        if (processlayer != null ? !processlayer.equals(that.processlayer) : that.processlayer != null) return false;
        if (reworklayer != null ? !reworklayer.equals(that.reworklayer) : that.reworklayer != null) return false;
        if (partialfullflag != null ? !partialfullflag.equals(that.partialfullflag) : that.partialfullflag != null)
            return false;
        if (proclayer != null ? !proclayer.equals(that.proclayer) : that.proclayer != null) return false;
        if (departmentid != null ? !departmentid.equals(that.departmentid) : that.departmentid != null) return false;
        if (iscomplete != null ? !iscomplete.equals(that.iscomplete) : that.iscomplete != null) return false;
        if (inspectiontype != null ? !inspectiontype.equals(that.inspectiontype) : that.inspectiontype != null)
            return false;
        if (autoskipflag != null ? !autoskipflag.equals(that.autoskipflag) : that.autoskipflag != null) return false;
        if (rptprocessoperationgroup != null ? !rptprocessoperationgroup.equals(that.rptprocessoperationgroup) : that.rptprocessoperationgroup != null)
            return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = factoryname != null ? factoryname.hashCode() : 0;
        result = 31 * result + (processoperationname != null ? processoperationname.hashCode() : 0);
        result = 31 * result + (processoperationversion != null ? processoperationversion.hashCode() : 0);
        result = 31 * result + (description != null ? description.hashCode() : 0);
        result = 31 * result + (checkstate != null ? checkstate.hashCode() : 0);
        result = 31 * result + (activestate != null ? activestate.hashCode() : 0);
        result = 31 * result + (createtime != null ? createtime.hashCode() : 0);
        result = 31 * result + (createuser != null ? createuser.hashCode() : 0);
        result = 31 * result + (checkouttime != null ? checkouttime.hashCode() : 0);
        result = 31 * result + (checkoutuser != null ? checkoutuser.hashCode() : 0);
        result = 31 * result + (processoperationtype != null ? processoperationtype.hashCode() : 0);
        result = 31 * result + (detailprocessoperationtype != null ? detailprocessoperationtype.hashCode() : 0);
        result = 31 * result + (processoperationgroup != null ? processoperationgroup.hashCode() : 0);
        result = 31 * result + (processoperationunit != null ? processoperationunit.hashCode() : 0);
        result = 31 * result + (isloginrequired != null ? isloginrequired.hashCode() : 0);
        result = 31 * result + (defaultareaname != null ? defaultareaname.hashCode() : 0);
        result = 31 * result + (operationsequence != null ? operationsequence.hashCode() : 0);
        result = 31 * result + (isrework != null ? isrework.hashCode() : 0);
        result = 31 * result + (skipflag != null ? skipflag.hashCode() : 0);
        result = 31 * result + (lastupdateuser != null ? lastupdateuser.hashCode() : 0);
        result = 31 * result + (lastupdatetime != null ? lastupdatetime.hashCode() : 0);
        result = 31 * result + (ismainstep != null ? ismainstep.hashCode() : 0);
        result = 31 * result + (subfactoryname != null ? subfactoryname.hashCode() : 0);
        result = 31 * result + (inspectionskipflag != null ? inspectionskipflag.hashCode() : 0);
        result = 31 * result + (dcdatacheckflag != null ? dcdatacheckflag.hashCode() : 0);
        result = 31 * result + (partialproductqty != null ? partialproductqty.hashCode() : 0);
        result = 31 * result + (defectreportflag != null ? defectreportflag.hashCode() : 0);
        result = 31 * result + (updatetime != null ? updatetime.hashCode() : 0);
        result = 31 * result + (processlayer != null ? processlayer.hashCode() : 0);
        result = 31 * result + (reworklayer != null ? reworklayer.hashCode() : 0);
        result = 31 * result + (partialfullflag != null ? partialfullflag.hashCode() : 0);
        result = 31 * result + (proclayer != null ? proclayer.hashCode() : 0);
        result = 31 * result + (departmentid != null ? departmentid.hashCode() : 0);
        result = 31 * result + (iscomplete != null ? iscomplete.hashCode() : 0);
        result = 31 * result + (inspectiontype != null ? inspectiontype.hashCode() : 0);
        result = 31 * result + (autoskipflag != null ? autoskipflag.hashCode() : 0);
        result = 31 * result + (rptprocessoperationgroup != null ? rptprocessoperationgroup.hashCode() : 0);
        return result;
    }
}
